// 默认配置对象，导出应用所需的各项配置
export default {
  // 应用启动端口，优先使用环境变量 PORT，若未设置则默认使用 8088
  port: process.env.PORT || 8088,
  // 数据库配置对象
  db: {
    // 数据库主机地址，优先使用环境变量 DB_HOST，若未设置则默认使用 'localhost'
    host: process.env.DB_HOST || 'localhost',
    // 数据库端口号，优先使用环境变量 DB_PORT，若未设置则默认使用 3306
    port: process.env.DB_PORT || 3306,
    // 数据库用户名，优先使用环境变量 DB_USER，若未设置则默认使用 'root'
    user: process.env.DB_USER || 'root',
    // 数据库密码，优先使用环境变量 DB_PASSWORD，若未设置则默认使用 '123456'
    password: process.env.DB_PASSWORD || '123456',
    // 数据库名称，优先使用环境变量 DB_NAME，若未设置则默认使用 'mall'
    name: process.env.DB_NAME || 'mall'
  },
  // JWT 配置对象
  jwt: {
    // JWT 密钥，从环境变量 JWT_SECRET 获取
    secret: process.env.JWT_SECRET,
    // JWT 刷新密钥，从环境变量 JWT_REFRESH_SECRET 获取
    refreshSecret: process.env.JWT_REFRESH_SECRET,
    // JWT 过期时间，从环境变量 JWT_EXPIRES_IN 获取
    expiresIn: process.env.JWT_EXPIRES_IN,
    // JWT 刷新令牌过期时间，从环境变量 JWT_REFRESH_EXPIRES_IN 获取
    refreshExpiresIn: process.env.JWT_REFRESH_EXPIRES_IN,
    // JWT 签发者，优先使用环境变量 JWT_ISSUER，若未设置则默认使用 'mall-api-dev'
    issuer: process.env.JWT_ISSUER || 'mall-api-dev'
  }
};
